home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1994 March / Internet Info CD-ROM (Walnut Creek) (March 1994).iso / inet / internet-drafts / 2-scribe.template < prev    next >
Text File  |  1993-03-03  |  14KB  |  486 lines

  1.  
  2. Internet-Draft                                             Glenn Trewitt
  3.                                                                July 1991
  4.  
  5.  
  6.  
  7.                       RFC Document Type for Scribe
  8.  
  9.  
  10. STATUS OF THIS MEMO
  11.  
  12.         This odd Internet Draft is posted for the convenience of
  13.         authors who wish to prepare documents in the style of
  14.         RFC's.  This Scribe document type can produce either RFC's
  15.         or Internet Drafts, provided that the author follows the
  16.         guidlines listed in the file IETF/1id-guidelines in all the
  17.         IETF directories.
  18.  
  19.  
  20. ABSTRACT
  21.  
  22.         This Internet Draft contains a Scribe document type
  23.         definition for producing documents in the formats of either
  24.         Request for Comments (RFC's) or Internet Drafts.
  25.           NOTE: Scribe is a trademark of Scribe Systems.
  26.         This definition can produce either text or PostScript
  27.         format output.
  28.           NOTE: PostScript is a trademark of Adobe Systems, Inc.
  29.  
  30.  
  31. 1 Installation
  32.  
  33.    The file appended at the end of this document should be named
  34.    "rfc.mak" and installed in one of the following locations:
  35.  
  36.       - The same directory that you run Scribe from.
  37.  
  38.       - The system-wide Scribe "database" directory.  Talk to your
  39.         system administrator.
  40.  
  41.       - A private Scribe "database" directory.  You will need to
  42.         use the command "@use(database = 'directory-name')" at the
  43.         beginning of your .mss file to tell Scribe where to find
  44.         the file.
  45.  
  46.  
  47. 2 Usage
  48.  
  49.    To make an RFC, the following preamble should be included at the
  50.    beginning of your .mss file:
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57. Glenn Trewitt                                                   [Page 1]
  58.  
  59. Internet-Draft        RFC Document Type for Scribe          12-July-1991
  60.  
  61.  
  62.        @device(pagedfile)
  63.        @make(rfc)
  64.  
  65.        @RFC(
  66.                Title = "Full Title of RFC",
  67.                Authors = "Full Author list for Title Page"
  68.                WG = "Working Group Name",
  69.                Number = "####",
  70.                ShortTitle = "Short Title for Page Headings",
  71.                ShortAuthors = "Authors for Page Headings",
  72.                Date = "12-July-1991"
  73.        )
  74.  
  75.    To make an Internet Draft, the following preamble should be included
  76.    at the beginning of your .mss file:
  77.  
  78.        @device(pagedfile)
  79.        @make(rfc)
  80.  
  81.        @InternetDraft(
  82.                Title = "Full Title of Internet Draft",
  83.                Authors = "Full Author list for Title Page"
  84.                WG = "Working Group Name",
  85.                ShortTitle = "Short Title for Page Headings",
  86.                ShortAuthors = "Authors for Page Headings",
  87.                Date = "12-July-1991"
  88.        )
  89.  
  90.    The "Authors" and "Title" parameters may have multiple lines; they
  91.    are printed at the top of the first page.  The "ShortTitle" and
  92.    "ShortAuthors" parameters are put in the page heading, and should fit
  93.    together on one line.
  94.  
  95.    After the preamble, the "Status of this memo" and Abstract sections
  96.    can be produced using these environments:
  97.  
  98.        @begin(status)
  99.        "Status of this memo" paragraph goes here.
  100.        @end(status)
  101.  
  102.        @begin(abstract)
  103.        Abstract of document...
  104.        @end(abstract)
  105.  
  106.    The remainder of your document should be regular Scribe commands.
  107.    The capabilities are similar to the standard "report" document type.
  108.    Footnotes (@foot command) can be used; they are printed in-line on
  109.    non-laser printer devices.
  110.      NOTE: Here is an example of a long footnote.  As you can see, in
  111.            the text document it is nicely offset from the main body.
  112.            In laser printer output, it is printed at the bottom of the
  113.            page, as usual.
  114. Glenn Trewitt                                                   [Page 2]
  115.  
  116. Internet-Draft        RFC Document Type for Scribe          12-July-1991
  117.  
  118.  
  119.    The following device types can be used with the RFC document type:
  120.       - PostScript
  121.       - any "ScaleableLaser" device
  122.       - File
  123.       - PagedFile
  124.       - CRT
  125.  
  126.  
  127.  
  128. I. AUTHOR'S ADDRESS
  129.  
  130.    Glenn Trewitt
  131.    trewitt@pa.dec.com
  132.  
  133.  
  134.  
  135. II. RFC.MAK
  136.  
  137.    The rfc.mak file is appended after this page.
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171. Glenn Trewitt                                                   [Page 3]
  172.  
  173. @Comment[ Loosely derived from Unilogic "Report" document type. ]
  174.  
  175. @Comment[
  176.     Scribe format for an RFC or Internet Draft
  177.  
  178.     18 July 1984    Jeff Mogul    Stanford
  179.     Heavily hacked over
  180.     July 1987    Glenn Trewitt    Stanford
  181.     Tweaked for release, added Internet Draft
  182.     July 1991    Glenn Trewitt    Digital Equipment Corp.
  183.     
  184. Usage:
  185.     @device(pagedfile)
  186.     @make(rfc)
  187.  
  188.     @RFC(
  189.         Title = "Full Title of RFC",
  190.         Authors = "Full Author list for Title Page"
  191.         WG = "Working Group Name",
  192.         Number = "####",
  193.         ShortTitle = "Short Title for Page Headings",
  194.         ShortAuthors = "Authors for Page Headings",
  195.         Date = "12-July-1991"
  196.     )
  197.         --- OR ---
  198.     @InternetDraft(
  199.         Title = "Full Title of Internet Draft",
  200.         Authors = "Full Author list for Title Page"
  201.         WG = "Working Group Name",
  202.         ShortTitle = "Short Title for Page Headings",
  203.         ShortAuthors = "Authors for Page Headings",
  204.         Date = "12-July-1991"
  205.     )
  206.  
  207.     @begin(status)
  208.     "Status of this memo" paragraph goes here.
  209.     @end(status)
  210.     
  211.     @begin(abstract)
  212.     Abstract of document...
  213.     @end(abstract)
  214. ]
  215.  
  216. @Marker(Make,RFC,File,PagedFile,CRT)
  217. @Declare(PaperLength 58)
  218. @Define(BodyStyle,Spacing 1)
  219. @Define(NoteStyle,Spacing 1)
  220.  
  221. @Style(TopMargin 4, BottomMargin 3)
  222. @Style(Hyphenation Off, Justification Off)
  223. @Style(WidowAction ForceWarn)
  224. @Style(References=CACM)
  225. @Style(Date= "March 1952", FileDate= "March 1952")
  226.  
  227. @modify(hdg, fixed 1)
  228. @modify(Heading, leftmargin 0, flushleft, above 2, need 5)
  229. @modify(Subheading, leftmargin 1, flushleft, above 2, need 4)
  230.  
  231. @Generate(Outline,Contents)
  232. @Send(Contents "@NewPage(0)@Set(Page=LastPreContentsPage,page=+1)@Style(PageNum
  233. ber <@i>)")
  234. @Send(Contents "@PrefaceSection(Table of Contents)")
  235.  
  236. @define(foot, break around, afterentry 'NOTE: ',
  237.     leftmargin +8, indent -6, rightmargin +2)
  238. @define(note = foot)
  239.  
  240. @Define    (HDX,Hyphenation off,
  241.     LeftMargin 0,Indent 0,Fill,Spaces compact,Above 1,Below 0,
  242.       break,need 4,Justification Off)
  243. @Define    (Hd0,Use HdX,Above 1inch,Below 0.5inch)
  244. @Define(Hd1,Use HdX,Above 3, below 1, capitalized)
  245. @Define(HD1A=HD1,Centered)
  246. @Define(Hd2,Use HdX,Above 2, below 1)
  247. @Define(Hd3,Use HdX,Above 1)
  248. @Define(Hd4,Use HdX,Above 1)
  249. @Define(TcX,LeftMargin 5,Indent -5,RightMargin 5,Fill,Spaces compact,
  250.     Above 0,Spacing 1,Below 0,Break,Spread 0)
  251. @Define(Tc0=TcX)
  252. @Define(Tc1=TcX,Above 1)
  253. @Define(Tc2=TcX,LeftMargin 5)
  254. @Define(Tc3=TcX,LeftMargin 10)
  255. @Define(Tc4=TcX,LeftMargin 15)
  256. @Counter(MajorPart,TitleEnv HD0,ContentsEnv tc0,Numbered [@I],
  257.       IncrementedBy Use,Announced)
  258. @Counter(Chapter,TitleEnv HD1,ContentsEnv tc1,Numbered [@1.],
  259.       IncrementedBy Use,Referenced [@1],Announced)
  260. @Counter(Appendix,TitleEnv HD1,ContentsEnv tc1,Numbered [@I.],
  261.       IncrementedBy,Referenced [@I],Announced,Alias Chapter)
  262. @Counter(UnNumbered,TitleEnv HD1,ContentsEnv tc1,Announced,Alias Chapter)
  263. @Counter(Section,Within Chapter,TitleEnv HD2,ContentsEnv tc2,
  264.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use,Announced)
  265. @Counter(AppendixSection,Within Appendix,TitleEnv HD2,ContentsEnv tc2,
  266.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use,Announced)
  267. @Counter(SubSection,Within Section,TitleEnv HD3,ContentsEnv tc3,
  268.       Numbered [@#@:.@1],IncrementedBy Use,Referenced [@#@:.@1])
  269. @Counter(Paragraph,Within SubSection,TitleEnv HD4,ContentsEnv tc4,
  270.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use)
  271.  
  272. @Counter(PrefaceSection,TitleEnv HD1A,Alias Chapter)
  273.  
  274. @LibraryFile(Figures)
  275. @LibraryFile(Titlepage)
  276.  
  277. @string(emdash='--')
  278. @string(endash='-')
  279. @equate(k=value)
  280.  
  281. @form(RFC '
  282.     @begin(text, leftmargin 0)
  283.     @Begin(FlushLeft, fixed 1)
  284. @parm(WG)
  285. Request for Comments: @Parm(Number)
  286.     @end(FlushLeft)
  287.     @blankspace(-2)
  288.     @Begin(FlushRight, fixed 1)
  289.     @Parm(Authors)
  290.     @Value(date)
  291.     @End(FlushRight)
  292.  
  293.     @blankspace(4)
  294.     @titletext@parmquote(title)
  295.     @end(text)
  296.  
  297. @PageHeading(Left "RFC @parm(Number)", Center "@parm(ShortTitle)",
  298.         Right "@parm(Date)")
  299. @PageFooting(immediate, Left "@parm(ShortAuthors)", Right "[Page @value(page)]"
  300. )
  301. ')
  302.  
  303. @form(InternetDraft '
  304.     @begin(text, leftmargin 0)
  305.     @Begin(FlushLeft, fixed 1)
  306. @parm(WG)
  307. Internet-Draft
  308.     @end(FlushLeft)
  309.     @blankspace(-2)
  310.     @Begin(FlushRight, fixed 1)
  311.     @Parm(Authors)
  312.     @Value(date)
  313.     @End(FlushRight)
  314.  
  315.     @blankspace(4)
  316.     @titletext@parmquote(title)
  317.     @end(text)
  318.  
  319. @PageHeading(Left "Internet-Draft", Center "@parm(ShortTitle)",
  320.         Right "@parm(Date)")
  321. @PageFooting(immediate, Left "@parm(ShortAuthors)", Right "[Page @value(page)]"
  322. )
  323. ')
  324.  
  325. @Define(Abstract, Use BodyStyle, Fill, above 0, below 1,
  326.     LeftMargin +.5 inch, RightMargin +.5 inch,
  327.     beforeentry "@heading(Abstract)")
  328. @define(status, use abstract,
  329.     beforeentry "@heading(Status of this Memo)")
  330. @Define(TitleText, Use MajorHeading, capitalized off, above 0)
  331.  
  332. @Modify(EquationCounter,Within Chapter,Numbered <(@#@:.@1)>,
  333.     Referenced "(@#@:.@1)")
  334. @Modify(TheoremCounter,Within Chapter)
  335.  
  336. @Equate(Sec=Section,Subsec=SubSection,Chap=Chapter,Para=Paragraph,
  337.     SubSubSec=Paragraph,AppendixSec=AppendixSection)
  338.  
  339. @Begin(Text,Indent 0,Spread 1,Use BodyStyle,LineWidth 72,
  340.     Spaces Compact,
  341.     Justification,Font CharDef,FaceCode R)
  342.  
  343. @set(page=1)
  344. @string(LastPreContentsPage="1")
  345.  
  346. @begin(text, leftmargin 3, eofok)
  347.  
  348.  
  349. @Marker(Make,RFC,ScaleableLaser,PostScript)
  350.  
  351. @LibraryFile(SansSerif)
  352. @Define(BodyStyle, Font BodyFont, Spacing 1.3, Spread 0.8, Size 11, Indent 0)
  353. @Define(NoteStyle, Font BodyFont, FaceCode R, Spacing 1, Size 9, Indent 0)
  354.  
  355. @Style(Hyphenation Off)
  356. @Style(WidowAction ForceWarn)
  357. @Style(References=CACM)
  358. @Style(Date= "March 1952", FileDate= "March 1952")
  359.  
  360. @modify(Heading, leftmargin 0, flushleft, above 2, need 5)
  361. @modify(Subheading, leftmargin 1, flushleft, above 2, need 4)
  362. @modify(programexample, size +0)
  363. @modify(fileexample, size +0)
  364.  
  365. @Generate(Outline,Contents)
  366. @Send(Contents "@PrefaceSection(Table of Contents)")
  367. @Send(Contents "@Style(PageNumber <@i>)@Set(Page=1)")
  368. @Send(Contents "@Process(PageHeadings)")
  369. @Send(Contents "@define(foot,invisible)")
  370.  
  371. @textform(note = '@foot@parmquote(text)')
  372.  
  373. @Define    (HDX, Hyphenation off,
  374.     LeftMargin 0,Indent 0,Fill, Spaces compact, Below 0,
  375.       break,need 4,Justification Off, font TitleFont, FaceCode B)
  376. @Define(Hd0, Use HdX, Size +5, Above 1inch, Below 0.5inch)
  377. @Define(Hd1, Use HdX, Size +3, Above 2.5, below 1)
  378. @Define(HD1A=HD1,Centered)
  379. @Define(Hd2, Use HdX, Size +2, Above 2, below 1)
  380. @Define(Hd3, Use HdX, Size +1, Above 1)
  381. @Define(Hd4, Use HdX, Size +0, Above 1)
  382. @Define(TcX,LeftMargin 5,Indent -5,RightMargin 5,Fill,Spaces compact,
  383.     Above 0,Spacing 1,Below 0,Break,Spread 0)
  384. @Define(Tc0=TcX, LeftMargin  0, Above 1.2)
  385. @Define(Tc1=TcX, LeftMargin  4, Above .8)
  386. @Define(Tc2=TcX, LeftMargin  8)
  387. @Define(Tc3=TcX, LeftMargin 12)
  388. @Define(Tc4=TcX, LeftMargin 16)
  389. @Counter(MajorPart,TitleEnv HD0,ContentsEnv tc0,Numbered [@I],
  390.       IncrementedBy Use,Announced)
  391. @Counter(Chapter,TitleEnv HD1,ContentsEnv tc1,Numbered [@1.],
  392.       IncrementedBy Use,Referenced [@1],Announced)
  393. @Counter(Appendix,TitleEnv HD1,ContentsEnv tc1,Numbered [@I.],
  394.       IncrementedBy,Referenced [@I],Announced,Alias Chapter)
  395. @Counter(UnNumbered,TitleEnv HD1,ContentsEnv tc1,Announced,Alias Chapter)
  396. @Counter(Section,Within Chapter,TitleEnv HD2,ContentsEnv tc2,
  397.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use,Announced)
  398. @Counter(AppendixSection,Within Appendix,TitleEnv HD2,ContentsEnv tc2,
  399.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use,Announced)
  400. @Counter(SubSection,Within Section,TitleEnv HD3,ContentsEnv tc3,
  401.       Numbered [@#@:.@1],IncrementedBy Use,Referenced [@#@:.@1])
  402. @Counter(Paragraph,Within SubSection,TitleEnv HD4,ContentsEnv tc4,
  403.       Numbered [@#@:.@1],Referenced [@#@:.@1],IncrementedBy Use)
  404.  
  405. @Counter(PrefaceSection,TitleEnv HD1A,Alias Chapter)
  406.  
  407. @LibraryFile(Figures)
  408. @LibraryFile(Titlepage)
  409.  
  410. @form(RFC '
  411.     @begin(text, leftmargin 0, FaceCode B)
  412.     @Begin(FlushLeft, fixed .5in)
  413. @parm(WG)
  414. Request for Comments: @Parm(Number)
  415.     @end(FlushLeft)
  416.     @blankspace(-2)
  417.     @Begin(FlushRight, fixed .5in)
  418.     @Parm(Authors)
  419.     @Value(date)
  420.     @End(FlushRight)
  421.  
  422.     @titletext@parmquote(title)
  423.     @end(text)
  424. @PageHeading(Left "RFC @parm(Number)", Center "@parm(ShortTitle)",
  425.         Right "@parm(Date)")
  426. @PageFooting(immediate, Left "@parm(ShortAuthors)", Right "[Page @value(page)]"
  427. )
  428. ')
  429.  
  430. @form(InternetDraft '
  431.     @begin(text, leftmargin 0)
  432.     @Begin(FlushLeft, fixed .5in)
  433. @parm(WG)
  434. Internet-Draft
  435.     @end(FlushLeft)
  436.     @blankspace(-2)
  437.     @Begin(FlushRight, fixed .5in)
  438.     @Parm(Authors)
  439.     @Value(date)
  440.     @End(FlushRight)
  441.  
  442.     @blankspace(4)
  443.     @titletext@parmquote(title)
  444.     @end(text)
  445.  
  446. @PageHeading(Left "Internet-Draft", Center "@parm(ShortTitle)",
  447.         Right "@parm(Date)")
  448. @PageFooting(immediate, Left "@parm(ShortAuthors)", Right "[Page @value(page)]"
  449. )
  450. ')
  451.  
  452. @Define(Abstract, Use BodyStyle, Fill, above 3, below 2,
  453.     LeftMargin +.5 inch, RightMargin +.5 inch)
  454. @define(status, use abstract, above 0,
  455.     beforeentry "@heading(Status of this Memo)")
  456. @Define(TitleText, Use MajorHeading, capitalized off, above 4)
  457.  
  458. @Modify(EquationCounter,Within Chapter,Numbered <(@#@:.@1)>,
  459.     Referenced "(@#@:.@1)")
  460. @Modify(TheoremCounter,Within Chapter)
  461.  
  462. @Equate(Sec=Section,Subsec=SubSection,Chap=Chapter,Para=Paragraph,
  463.     SubSubSec=Paragraph,AppendixSec=AppendixSection)
  464.  
  465. @Begin(Text, Use BodyStyle,
  466.     LeftMargin 1in, LineWidth 6.5in, topmargin 1in, BottomMargin 1in,
  467.     hyphenation off, justification on,
  468.     FaceCode R, eofok)
  469.  
  470.  
  471. @set(page=1)
  472. @string(LastPreContentsPage="1")
  473.  
  474. @begin(text, leftmargin 3, eofok)
  475.  
  476.  
  477. @Marker(Make,ChangeLog)
  478. @Comment[
  479. 18 Jul 84  JCM    First cut at an RFC document.
  480.  1 Apr 87  GMT  Revised format (pagedfile only) to work really well.
  481.         Really ought to put most things in a common library.
  482.  9 Jul 91  GMT    Added "status" and "abstract" definitions.  Added
  483.         InternetDraft macro.
  484. ]
  485.  
  486.